package com.mxpio.erp.common.inventory.entity;

import com.mxpio.erp.common.jpa.model.NoticeLine;
import com.mxpioframework.security.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.math.BigDecimal;

@Data
@EqualsAndHashCode(callSuper=false)
@Entity
@Table(name = "MB_ERP_INV_FP_NOTICE_LINE")
@Schema(description="送货计划行")
public class FeedPlanNoticeLine extends NoticeLine {

	private static final long serialVersionUID = 1L;

    @Schema(description = "对应领料出库通知单单号")
    @Column(name = "SOURCE_PICKING_NOTICE_NO_")
    private String sourcePickingNoticeNo;

    @Schema(description = "对应领料出库通知单行号")
    @Column(name = "SOURCE_PICKING_NOTICE_LINE_NO_")
    private String sourcePickingNoticeLineNo;


    @Transient
    @Schema(description = "实际收货数")
    private BigDecimal actualReceiving;

    @Transient
    @Schema(description = "计划收货数")
    private BigDecimal planedReceiving;

    @Transient
    @Schema(description = "计划退货数")
    private BigDecimal planedReturns;

    @Column(name = "MEMO_")
    @Schema(description = "备注")
    private String memo;

    @Column(name = "MATERIAL_BRAND_")
    @Schema(description = "材料牌号")
    private String materialBrand;

    @Column(name = "MATERIAL_TYPE_")
    @Schema(description = "材料类型")
    @Dict(dicCode = "ERP_TECH_MATERIAL_TYPE")
    private String materialType;

    @Column(name = "MAKE_LENGTH_")
    @Schema(description = "下料长度")
    private BigDecimal makeLength;

    @Column(name = "MAKE_AREA_")
    @Schema(description = "下料面积")
    private BigDecimal makeArea;

    @Column(name = "MAKE_NUM_")
    @Schema(description = "可制数量")
    private BigDecimal makeNum;


}
